﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Incident_Manager_PUCP
{
    public partial class frmConsultarServicio : Form
    {
       

        public frmConsultarServicio()
        {
            InitializeComponent();
            this.dgvServicios.SelectionMode =
                DataGridViewSelectionMode.FullRowSelect;
            this.dgvServicios.MultiSelect = false;
        
        }

        
        private void btnSalir_Click(object sender, EventArgs e)
        {
            this.Close();

        }

  
        private void button1_Click(object sender, EventArgs e)
        {
            dgvServicios.Rows.Clear();

            List<Servicio> lista_temp = new List<Servicio>();

            GestorServicio gestorServicio = GestorServicio.ObtenerInstancia();

            //MessageBox.Show("indx " + cbCriterioBusq.SelectedIndex);

            if (cbCriterioBusq.SelectedIndex == 0) {
                //por código
                lista_temp = gestorServicio.buscarServiciosPorCodigo(tbTextBusq.Text);
            }
            else {
                //por nombre
                lista_temp = gestorServicio.buscarServiciosPorNombre(tbTextBusq.Text);
            }

            
            foreach (Servicio serv in lista_temp) {
                int x = dgvServicios.Rows.Add();
                
                dgvServicios.Rows[x].Cells[0].Value = serv.getCodigo();
                dgvServicios.Rows[x].Cells[1].Value = serv.getNombre();
                dgvServicios.Rows[x].Cells[2].Value = serv.getTipo();
                dgvServicios.Rows[x].Cells[3].Value = serv.getHorarioCobertura();
                dgvServicios.Rows[x].Cells[4].Value = serv.getModoAtencion();                               
            }

            dgvServicios.ClearSelection();

        }

        private void dgvServicios_CellContentClick(object sender, DataGridViewCellEventArgs e) {
            Int32 selectedRowCount =
                dgvServicios.Rows.GetRowCount(DataGridViewElementStates.Selected);

            if (selectedRowCount > 0) {

                Servicio srv = GestorServicio.ObtenerInstancia().buscarServicio(dgvServicios.SelectedRows[0].Cells[0].Value.ToString());
                frmModificarServicio rs = new frmModificarServicio(srv);
                rs.Show();
              

                
                //System.Text.StringBuilder sb = new System.Text.StringBuilder();

                //for (int i = 0; i < selectedRowCount; i++) {
                //    sb.Append("Row: ");
                //    sb.Append(dgvServicios.SelectedRows[i].Index.ToString());
                //    sb.Append(Environment.NewLine);
                //}

                //sb.Append("Total: " + selectedRowCount.ToString());
                //MessageBox.Show(sb.ToString(), "Selected Rows");
            }
        }

        
    }
}
